package com.duowei.diandan.bean;

import android.os.Parcel;
import android.os.Parcelable;

import com.duowei.diandan.db.entry.Jycssz;

import java.util.ArrayList;
import java.util.List;

public class Desk implements Parcelable {

    private Jycssz jycssz;
    private List<DeskStatus> deskStatusList = new ArrayList<>();

    public Desk(Jycssz jycssz) {
        this.jycssz = jycssz;
    }

    protected Desk(Parcel in) {
        deskStatusList = in.createTypedArrayList(DeskStatus.CREATOR);
    }

    public static final Creator<Desk> CREATOR = new Creator<Desk>() {
        @Override
        public Desk createFromParcel(Parcel in) {
            return new Desk(in);
        }

        @Override
        public Desk[] newArray(int size) {
            return new Desk[size];
        }
    };

    public Jycssz getJycssz() {
        return jycssz;
    }

    public void setJycssz(Jycssz jycssz) {
        this.jycssz = jycssz;
    }

    public List<DeskStatus> getDeskStatusList() {
        return deskStatusList;
    }

    public String getDeskName() {
        if (deskStatusList.size() == 1) {
            return deskStatusList.get(0).getDcczYhbh() != null ? "[" + jycssz.getCsmc() + "]" : jycssz.getCsmc();

        } else {
            return jycssz.getCsmc();
        }
    }

    private OnDataChangedListener mOnDataChangedListener;

    public void setOnDataChangedListener(OnDataChangedListener onDataChangedListener) {
        mOnDataChangedListener = onDataChangedListener;
    }

    public void setDataChanged() {
        if (mOnDataChangedListener != null) {
            mOnDataChangedListener.onDataChanged();
        }
    }

    @Override
    public int describeContents() {
        return 0;
    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeTypedList(deskStatusList);
    }

    public interface OnDataChangedListener {
        void onDataChanged();
    }
}
